Object-Oriented Refactoring Using Graph Rewriting

نویسندگان

  • Tom Mens
  • Serge Demeyer
  • Dirk Janssens
چکیده

Abstract. This paper advocates need for a formal foundation for refactoring object-oriented software. More specifically, it investigates the potential of graph rewriting as candidate formalism. Using a small Java application as a case study, it shows how a range of different notions of behaviour preservation can be expressed in a formal, yet intuitive, way. A number of other open research topics that can benefit from a graph rewriting formalism are discussed as well.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Hierarchical Program Representation for Refactoring

Currently there is a lot of interest in graph representations of software systems, as they provide a natural and flexible means to describe complex structures. The various visual sublanguages of the UML are perhaps the most obvious example of this. In [10] a graph representation of object-oriented programs was presented that enables one to describe refactoring operations (behaviour-preserving c...

متن کامل

Formalising Behaviour Preserving Program Transformations

The notion of refactoring —transforming the source-code of an objectoriented program without changing its external behaviour— has increased the need for a precise definition of refactorings and their properties. This paper introduces a graph representation of those aspects of the source code that should be preserved by a refactoring, and graph rewriting rules as a formal specification for the r...

متن کامل

Program Graph Transformation

Graph transformation, a branch of theoretical computer science, is about the definition of graph languages by grammars, and the study of computations on graphs by rewrite rules. In this paper, we sketch a software engineering problem – the refactoring of object-oriented software – and indicate how graph grammars and graph rewrite rules can be extended for specifying and implementing refactoring...

متن کامل

Refactoring of UML models using AGG

Model refactoring is an emerging research topic that is heavily inspired by refactoring of object-oriented programs. Current-day UML modeling environments provide poor support for evolving UML models and applying refactoring techniques at model level. As UML models are intrinsically graph-based in nature we propose to use graph transformations to specify and apply model refactoring. More in par...

متن کامل

Object-oriented Refactoring of Java Programs using Graph Transformation

In this case study for the transformation tool contest (TTC), we propose to implement object-oriented program refactorings using transformation techniques. The case study proposes two major challenges to be solved by solution candidates: (1) bi-directional synchronization between source/target program source code and abstract program representations, and (2) program transformation rules for pro...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2001